iT邦幫忙

DAY 20
4

Android 學習手札系列 第 20

Day 20 - Android - 佈景

  • 分享至 

  • xImage
  •  

今天將以 Day 18 - Android - 計數與呈現 來為各位更進一步的介紹佈景(Layout)的設定概念
先來看看 Day 18 - Android - 計數與呈現 當天範例的佈景是這樣

再來是今天要完成的樣子

除了上面的按鈕移到下方外,還有點將數亦一起被移到下方,同時還多增加了一個角色的計數,再來看到 Day18 當天的佈景Outline

可以看到按鈕跟人數的部份是被分成兩個水平的線性佈局,那這時候希望可以被擺成人數以及角色統計在按鈕左邊,我們要做的動作時,再追加兩個線性佈局!
一個是角色統計數用的水平線性佈局,另外一個是將這兩個統計資料包起來用垂直線性佈局,所以做完後會長成這樣

接下來,將之拉到按鈕的水平佈局裡面

沒意外的話,我們會看到這樣的畫面

是滴!按鈕不見了失神
再來檢查看看!以解可能有ps圖片之嫌

這時,我們要對那幾個元素設定一個屬性:Weight,將這個LinearLayout設定成"1"

如何,這樣另外兩個按鈕就出來了!開心
接著,麻煩請自行將二個按鈕的Weight都設定成"1"吧!這時候,又會發現兩個按鈕被"擠"到最角落了Orz
所以要記得將統計文字的線性佈局之"Width"屬性設定為"wrap_content",因為預設都是"match_parent",如此一來,基本的樣子就出來了!
再來是將這一整個線性佈局設定到這個畫面的下方,直接將之拉到ScrollView之下!這時候各位可以執行起來看看,會發現那一塊整個不見了!

原因在於,我們在Day 17 - Android - 無中生有介紹的範例,該ScrollView是被我們設定為"warp_content",他的高度是跟著內容去"長出來的",若是過長,他就會被推到畫面外,若是短些,我們就能看到了!所以一切隨緣XD

當然不是只有這樣嘍!也許這時您會想說,那設定成"match_parent"不就好了嗎?,那這時候更慘,下面的區塊完全不見了!,就算內容比較少時也一樣,他會完全霸佔住整個剩下來的畫面!那遇到這麼霸道的狀況怎麼辦呢?就遶個道來解決這個問題嘍!怎麼處理呢?將母元件的線性部局改成關連部局(RelativeLayout)即可嘍!改好後就剩一個動作,將之設定到畫面的最下方,這時只要調整屬性:Align Parent Bottomtrue,同時記得將Below屬性的設定清掉,不然依系統幫我們做的自動設定,會使之跟隨著上面的ScrollView,此時,若是順利執行的話,可以看到下面這個樣子!

下面看起來怪怪的~搖頭
是的,他又跟上面的ScrollView和平共存了!Orz
和平共存是好事~只是,在這個時機點上,好像不該是如此呀XD
但可以確定的是,我們的雛型確實是出來了!接下來要做的動作有二
一、將這個LinearLayou命名為:ll_action_button
二、在上面的ScrollView的Above設定為:@+id/ll_action_button

這時候,再執行看看,相信各位看倌就能看到一個"合理"的畫面了,這時就更讓各位了解,他為何是關連佈景(RelativeLayout)了,因為使用了這個佈景元件,在畫面中的每個元素,都要有個"依存"性,只有一個元素時,依存著母元素,有二個元素時,看是要誰依存著誰針對四個方向:Below(隨後)、Above(在前)、To Left Of(跟左)、To Right Of(靠右)來設定不同的元素名稱。

最後就是為該區塊自行上個喜歡的顏色吧!在該佈局的"Background(背景)"屬性用色碼的方式上色,比如說:#000000,這是黑色,但這時用了黑色,您會看到文字似乎又跟背景色"完美"的融合在一起了XD,這時文字的顏色就請各位到該元素的 TextColor 屬性設定色碼#FFFFFF

這樣就完成今天要介紹給大家的部份嘍~
剩於的程式部份,就是單純的再計算三個被我們拉出來的"Checkbox"之計數,方式就與Day 18 - Android - 計數與呈現的作法是一樣的,再麻煩自行練習一下,或是請到 Mosil's GitHub上取得程式碼哦^_^

Day 19 - Android - 外面的世界《 》Day 21 - Android - 化身


上一篇
Day 19 - Android - 外面的世界
下一篇
Day 21 - Android - 化身
系列文
Android 學習手札30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
海綿寶寶
iT邦大神 1 級 ‧ 2012-10-14 23:29:46

夜已深
再蹺一堂課
臉紅

我要留言

立即登入留言